package com.ly.heart.domain;

import java.util.Date;

import com.baomidou.mybatisplus.annotation.IdType;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.ly.common.core.domain.BaseEntity;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ly.common.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/**
 * 施工计划对象 erp_construction_plan
 *
 * @author wutao
 * @date 2024-06-10
 */
@TableName("erp_construction_plan")
@ApiModel(value = "erp_construction_plan对象", description = "施工计划")
@Data
public class ConstructionPlanEntity extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 施工计划id
     */
    @TableId(type = IdType.INPUT)
    private String id;

    /**
     * 作业编码
     */
    @ApiModelProperty("作业编码")
    @TableField("homework_code")
    @Excel(name = "作业编码")
    private String homeworkCode;

    /**
     * 项目id
     */
    @ApiModelProperty("项目id")
    @TableField("project_id")
    @Excel(name = "项目id")
    private String projectId;

    /**
     * 项目编码
     */
    @ApiModelProperty("项目编码")
    @TableField("project_code")
    @Excel(name = "项目编码")
    private String projectCode;

    /**
     * 工序id
     */
    @ApiModelProperty("工序id")
    @TableField("working_step_id")
    @Excel(name = "工序id")
    private String workingStepId;

    /**
     * 分部分项
     */
    @ApiModelProperty("分部分项")
    @TableField("branch_id")
    @Excel(name = "分部分项")
    private String branchId;

    /**
     * 计划开始时间
     */
    @ApiModelProperty("计划开始时间")
    @TableField("plan_start_time")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "计划开始时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date planStartTime;

    /**
     * 计划结束时间
     */
    @ApiModelProperty("计划结束时间")
    @TableField("plan_end_time")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "计划结束时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date planEndTime;

    /**
     * 班组长
     */
    @ApiModelProperty("班组长")
    @TableField("user_id")
    @Excel(name = "班组长")
    private String userId;

    /**
     * 施工员
     */
    @ApiModelProperty("施工员")
    @TableField("worker")
    @Excel(name = "施工员")
    private String worker;

    /**
     * 施工内容
     */
    @ApiModelProperty("施工内容")
    @TableField("worke_remark")
    @Excel(name = "施工内容")
    private String workeRemark;

    /**
     * 作业量
     */
    @ApiModelProperty("作业量")
    @TableField("homework_volume")
    @Excel(name = "作业量")
    private String homeworkVolume;

    /**
     * 单位
     */
    @ApiModelProperty("单位")
    @TableField("unit")
    @Excel(name = "单位")
    private String unit;

    /**
     * 单价
     */
    @ApiModelProperty("单价")
    @TableField("unit_price")
    @Excel(name = "单价")
    private String unitPrice;

    /**
     * 金额
     */
    @ApiModelProperty("金额")
    @TableField("total_money")
    @Excel(name = "金额")
    private String totalMoney;

    /**
     * 删除标识
     */
    private String delFlag;

    public void setId(String id) {
        this.id = id;
    }

    public String getId() {
        return id;
    }

    public void setHomeworkCode(String homeworkCode) {
        this.homeworkCode = homeworkCode;
    }

    public String getHomeworkCode() {
        return homeworkCode;
    }

    public void setProjectId(String projectId) {
        this.projectId = projectId;
    }

    public String getProjectId() {
        return projectId;
    }

    public void setProjectCode(String projectCode) {
        this.projectCode = projectCode;
    }

    public String getProjectCode() {
        return projectCode;
    }

    public void setWorkingStepId(String workingStepId) {
        this.workingStepId = workingStepId;
    }

    public String getWorkingStepId() {
        return workingStepId;
    }

    public void setBranchId(String branchId) {
        this.branchId = branchId;
    }

    public String getBranchId() {
        return branchId;
    }

    public void setPlanStartTime(Date planStartTime) {
        this.planStartTime = planStartTime;
    }

    public Date getPlanStartTime() {
        return planStartTime;
    }

    public void setPlanEndTime(Date planEndTime) {
        this.planEndTime = planEndTime;
    }

    public Date getPlanEndTime() {
        return planEndTime;
    }

    public void setUserId(String userId) {
        this.userId = userId;
    }

    public String getUserId() {
        return userId;
    }

    public void setWorker(String worker) {
        this.worker = worker;
    }

    public String getWorker() {
        return worker;
    }

    public void setWorkeRemark(String workeRemark) {
        this.workeRemark = workeRemark;
    }

    public String getWorkeRemark() {
        return workeRemark;
    }

    public void setHomeworkVolume(String homeworkVolume) {
        this.homeworkVolume = homeworkVolume;
    }

    public String getHomeworkVolume() {
        return homeworkVolume;
    }

    public void setUnit(String unit) {
        this.unit = unit;
    }

    public String getUnit() {
        return unit;
    }

    public void setUnitPrice(String unitPrice) {
        this.unitPrice = unitPrice;
    }

    public String getUnitPrice() {
        return unitPrice;
    }

    public void setTotalMoney(String totalMoney) {
        this.totalMoney = totalMoney;
    }

    public String getTotalMoney() {
        return totalMoney;
    }

    public void setDelFlag(String delFlag) {
        this.delFlag = delFlag;
    }

    public String getDelFlag() {
        return delFlag;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("homeworkCode", getHomeworkCode())
                .append("projectId", getProjectId())
                .append("projectCode", getProjectCode())
                .append("workingStepId", getWorkingStepId())
                .append("branchId", getBranchId())
                .append("planStartTime", getPlanStartTime())
                .append("planEndTime", getPlanEndTime())
                .append("userId", getUserId())
                .append("worker", getWorker())
                .append("workeRemark", getWorkeRemark())
                .append("homeworkVolume", getHomeworkVolume())
                .append("unit", getUnit())
                .append("unitPrice", getUnitPrice())
                .append("totalMoney", getTotalMoney())
                .append("delFlag", getDelFlag())
                .append("createBy", getCreateBy())
                .append("createTime", getCreateTime())
                .append("updateBy", getUpdateBy())
                .append("updateTime", getUpdateTime())
                .toString();
    }
}
